package com.frank.oj.service.admin.problem;

import com.frank.model.entity.problem.Tag;
import com.frank.model.entity.problem.TagClassification;
import com.frank.oj.common.exception.StatusFailException;

import java.util.List;

/**
 * @author frank
 * @Date 2024/4/2
 */
public interface AdminTagService {
    Tag addTag(Tag tag) throws StatusFailException;

    void deleteTag(Long tid) throws StatusFailException;

    void updateTag(Tag tag) throws StatusFailException;

    List<TagClassification> getTagClassification(String oj);

    TagClassification addTagClassification(TagClassification tagClassification) throws StatusFailException;

    void updateTagClassification(TagClassification tagClassification) throws StatusFailException;

    void deleteTagClassification(Long tcid) throws StatusFailException;
}
